package com.ruoyi.vip.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.vip.mapper.TVipMapper;
import com.ruoyi.vip.domain.TVip;
import com.ruoyi.vip.service.ITVipService;

/**
 * 会员管理Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-11-09
 */
@Service
public class TVipServiceImpl implements ITVipService 
{
    @Autowired
    private TVipMapper tVipMapper;

    /**
     * 查询会员管理
     * 
     * @param vipId 会员管理主键
     * @return 会员管理
     */
    @Override
    public TVip selectTVipByVipId(Long vipId)
    {
        return tVipMapper.selectTVipByVipId(vipId);
    }

    /**
     * 查询会员管理列表
     * 
     * @param tVip 会员管理
     * @return 会员管理
     */
    @Override
    public List<TVip> selectTVipList(TVip tVip)
    {
        return tVipMapper.selectTVipList(tVip);
    }

    /**
     * 新增会员管理
     * 
     * @param tVip 会员管理
     * @return 结果
     */
    @Override
    public int insertTVip(TVip tVip)
    {
        if (tVipMapper.findTVipUser(tVip) == 0){
            if (tVipMapper.findTUserById(tVip) == 1){
                return tVipMapper.insertTVip(tVip);
            }else {
                return 2;
            }
        }else {
            return 0;
        }
    }

    /**
     * 修改会员管理
     * 
     * @param tVip 会员管理
     * @return 结果
     */
    @Override
    public int updateTVip(TVip tVip)
    {
        if (tVipMapper.findTVipUser(tVip) == 0){
            if (tVipMapper.findTUserById(tVip) == 1){
                return tVipMapper.updateTVip(tVip);
            }else {
                return 2;
            }
        }else{
            return 0;
        }
    }

    /**
     * 批量删除会员管理
     * 
     * @param vipIds 需要删除的会员管理主键
     * @return 结果
     */
    @Override
    public int deleteTVipByVipIds(Long[] vipIds)
    {
        return tVipMapper.deleteTVipByVipIds(vipIds);
    }

    /**
     * 删除会员管理信息
     * 
     * @param vipId 会员管理主键
     * @return 结果
     */
    @Override
    public int deleteTVipByVipId(Long vipId)
    {
        return tVipMapper.deleteTVipByVipId(vipId);
    }
}
